﻿using ProjectCore.Domain.Model.Entity;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;

namespace ProjectCore.Domain.DomainService
{
    public interface IProductDomainService
    {
        /// <summary>
        /// 逻辑删除
        /// </summary>
        /// <param name="Id"></param>
        /// <returns></returns>
       Task< int> IsDel(int Id);
        /// <summary>
        /// 添加
        /// </summary>
        /// <param name="product"></param>
        /// <returns></returns>
       Task< int> Add(Product product);
        /// <summary>
        /// 反填
        /// </summary>
        /// <param name="Id"></param>
        /// <returns></returns>
       Task< Product> GetProduct(int Id);
        /// <summary>
        /// 修改
        /// </summary>
        /// <param name="product"></param>
        /// <returns></returns>
        Task<int> Upt(Product product);

        /// <summary>
        /// Sku汽车添加
        /// </summary>
        /// <param name="car"></param>
        /// <returns></returns>
        Task<int> SkuCarAdd(SkuCar car);



        /// <summary>
        /// 其他设置添加
        /// </summary>
        /// <param name="setting"></param>
        /// <returns></returns>
        Task<int> SettingAdd(Setting setting);


        /// <summary>
        /// Sku手机添加
        /// </summary>
        /// <param name="phone"></param>
        /// <returns></returns>
        Task<int> SkuPhoneAdd(SkuPhone phone);


        /// <summary>
        /// Sku汽车反填
        /// </summary>
        /// <param name="Id"></param>
        /// <returns></returns>
        Task<SkuCar> GetCar(int Id);


        /// <summary>
        /// 其他设置反填
        /// </summary>
        /// <param name="Id"></param>
        /// <returns></returns>
        Task<Setting> GetSetting(int Id);


        /// <summary>
        /// Sku手机反填
        /// </summary>
        /// <param name="Id"></param>
        /// <returns></returns>
        Task<SkuPhone> GetPhone(int Id);


        /// <summary>
        /// Sku汽车修改
        /// </summary>
        /// <param name="car"></param>
        /// <returns></returns>
        Task<int> SkuCarUpt(SkuCar car);


        /// <summary>
        /// 其他设置修改
        /// </summary>
        /// <param name="setting"></param>
        /// <returns></returns>
        Task<int> SettingUpt(Setting setting);


        /// <summary>
        /// Sku手机修改
        /// </summary>
        /// <param name="phone"></param>
        /// <returns></returns>
        Task<int> SkuPhoneUpt(SkuPhone phone);

    }
}
